//
//  WHBaseViewController.h
//  WHPersonalData
//
//  Created by shengmeng chen on 2019/4/19.
//  Copyright © 2019 mac. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "SearchTitleView.h"
NS_ASSUME_NONNULL_BEGIN

@interface WHBaseTableViewController : UIViewController

@property (nonatomic, weak)UITableView *tableView;

@property (nonatomic, strong)NSMutableArray *datas;
/**  是否加载更多数据 **/
@property(nonatomic,assign)BOOL isHaveMoreData;
/**  当前是页的下标  **/
@property(nonatomic,assign)int currentPageIndex;


- (void)baseSetting;

- (void)setupUI;

- (void)loadDatas;

- (void)receiveNotis;

//下拉加载更多
- (void)loadMoreDatas;

//上拉刷新
- (void)refreshData;

///UITableViewStyleGrouped 类型的tableView
- (void)createTableViewStyleGrouped;

///TableViewStylePlain 类型的tableView
- (void)createTableViewStylePlain;

/**有需要为默认tableView添加常用占位视图的再自己写这个方法，这里先不打开了*/

//当前控制器 - 不需要占位图片
//- (void)mn_hiddenEmptyView;
//
////网络请求结束 - 展示占位图片
//- (void)mn_fetchDatasShowEmptyView;

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath;

-(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath;

- (void)mn_fixTableViewHeightWithTableView:(UITableView *)tableView;

@end

/*数据结构是 - @[],没有section的tableVIew*/
@interface WHBaseControllerTypeNoSection : WHBaseTableViewController

@end

/*数据结构是 - @[@[]],有section的tableVIew*/
@interface WHBaseControllerTypeHadSection : WHBaseTableViewController

@end

/*数据结构是 - @[],没有section的,有搜索的 tableVIew*/
@interface WHBaseControllerTypeNoSectionHaveSearch : WHBaseControllerTypeNoSection

@property(nonatomic,weak)SearchTitleView *searchView;

@end

NS_ASSUME_NONNULL_END
